package com.elitel.frame.main.config.properties;

import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.stereotype.Component;

import lombok.Data;
import lombok.ToString;

// here is for dynamic data source properites
@Component
@Data
@ConfigurationProperties(prefix="elitel.foundation.config.slave")
@ToString
public class DynamicDatasourceProperties{
    private int initialSize;
    private int minIdle;
    private int maxActive;
    private int maxWaitTime;
    private int queryTimeout; // seconds

    private int timeBetweenConnectErrorMillis;
    private int timeBetweenEvictionRunsMills;

    private int minEvictableIdleTimeMillis;
    private int maxEvictableIdleTimeMillis;

    private boolean testWhileIdle;
    private boolean testOnBorrow;
    private boolean testOnReturn;
    private boolean keepAlive;

    private boolean removeAbandoned;
    private int removeAbandonedTimeoutMillis;
    private boolean logAbandoned;

    private int maxPoolPreparedStatementPerConnectionSize;
}
